<?php
/**
 *  13位时间戳
 */
if (!function_exists('mTime')) {
    function mTime()
    {
        list($msec, $sec) = explode(' ', microtime());


        return sprintf('%.0f', ((float)$msec + (float)$sec) * 1000) * 1;
    }
}


if (!function_exists('unixTime')) {
    /**
     *  11位时间戳
     */
    function unixTime()
    {
        return time();
    }
}


if (!function_exists('s_exception')) {
    /**
     * 异常抛出
     * @param string $message
     * @param int $code
     * @throws Exception
     */
    function s_exception($message, $code = 999999)
    {
        throw new \Exception($message, $code);
    }
}


if (!function_exists('getIP')) {
    /**
     * 定义一个函数getIP() 客户端IP
     * @return array|false|string
     */
    function getIP()
    {
        if (getenv("HTTP_CLIENT_IP"))
            $ip = getenv("HTTP_CLIENT_IP");
        else if (getenv("HTTP_X_FORWARDED_FOR"))
            $ip = getenv("HTTP_X_FORWARDED_FOR");
        else if (getenv("REMOTE_ADDR"))
            $ip = getenv("REMOTE_ADDR");
        else $ip = "Unknow";

        if (preg_match('/^((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1 -9]?\d))))$/', $ip))
            return $ip;
        else
            return '';
    }
}

if (!function_exists('fullImgUrl')) {
    /**
     * 拼接完整的url地址
     *
     * @param $imgUrl
     * @return string
     */
    function fullImgUrl($imgUrl)
    {
        if (stripos($imgUrl, 'http') === 0 || stripos($imgUrl, '//') === 0) {
            return $imgUrl;
        } else {
            // fixme 这里暂时显示域名，应该是要换成CDN
            return config('filesystems.disks.public.url') . '/' . $imgUrl;
        }
    }
}